﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Sisocana.Core.Interfaces;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;


namespace Sisocana.Core.Models
{
    public class ReporteModel : IAnonimoModel
    {
        public int idPersona { get; set; }
        public bool externalEntity { get; set; }
        public int searchWSId { get; set; }
        public int siteId { get; set; }

        [DisplayName("Your first name")]
        [Required(ErrorMessage = "First name required")]
        [StringLength(100, MinimumLength = 4, ErrorMessage = "The minimum length is 4 and the maximum length is 100")]
        public string nombre { get; set; }        

        [DisplayName("Your last name")]
        [Required(ErrorMessage = "Last name required")]
        [StringLength(100, MinimumLength = 4, ErrorMessage = "The minimum length is 4 and the maximum length is 100")]
        public string apellido { get; set; }

        [DisplayName("Your e-mail address")]
        [Required(ErrorMessage = "E-mail address required")]
        [RegularExpression(@"^\S+@\w+\.\w{2,4}$", ErrorMessage = "Invalid e-mail")]
        [StringLength(100, MinimumLength = 4, ErrorMessage = "The minimum length is 4 and the maximum length is 100")]
        public string email { get; set; }

        [DisplayName("Your phone")]
        public string telefono { get; set; }

        [DisplayName("Date reported")]
        public DateTime fecha { get; set; }

        [DisplayName("Latitude")]
        public string CoordX { get; set; }

        [DisplayName("Longitude")]
        public string CoordY { get; set; }

        [DisplayName("Status")]
        [Required(ErrorMessage = "Report status required")]
        public string status { get; set; }

        [DisplayName("Message")]
        [Required(ErrorMessage = "Message required")]
        [StringLength(100, MinimumLength = 4, ErrorMessage = "The minimum length is 4 and the maximum length is 100")]
        public string mensaje { get; set; }


    }
}
